package com.party.core.model.crowdfund;

import java.io.Serializable;

/**
 * @Author: yangshoukun
 * @Date: 2018/6/12 18:53
 */
public class ProjectDetailCountOutput implements Serializable {
    private static final long serialVersionUID = 1459133257879239953L;
    // 事件id
    private String eventId;
    // 事件名称
    private String eventName;
    // 资金
    private Double money;
    // 订单量
    private Integer orderNum;
    // 报名人数
    private Integer applyNum;
    // 每人平均订单
    private Integer averageOrderNum;
    // 每人平均金额
    private Double averageMoney;
    // 成功人数
    private Integer successNum;
    // 人数成功率
    private String successNumRate;
    // 成功金额
    private Double successMoney;
    // 金额成功率
    private String successMoneyRate;
    // 时间段
    private String periodDate;

    public String getPeriodDate() {
        return periodDate;
    }

    public void setPeriodDate(String periodDate) {
        this.periodDate = periodDate;
    }

    public Integer getSuccessNum() {
        return successNum;
    }

    public void setSuccessNum(Integer successNum) {
        this.successNum = successNum;
    }

    public String getSuccessNumRate() {
        return successNumRate;
    }

    public void setSuccessNumRate(String successNumRate) {
        this.successNumRate = successNumRate;
    }

    public Double getSuccessMoney() {
        return successMoney;
    }

    public void setSuccessMoney(Double successMoney) {
        this.successMoney = successMoney;
    }

    public String getSuccessMoneyRate() {
        return successMoneyRate;
    }

    public void setSuccessMoneyRate(String successMoneyRate) {
        this.successMoneyRate = successMoneyRate;
    }

    public String getEventId() {
        return eventId;
    }

    public void setEventId(String eventId) {
        this.eventId = eventId;
    }

    public String getEventName() {
        return eventName;
    }

    public void setEventName(String eventName) {
        this.eventName = eventName;
    }

    public Double getMoney() {
        return money;
    }

    public void setMoney(Double money) {
        this.money = money;
    }

    public Integer getOrderNum() {
        return orderNum;
    }

    public void setOrderNum(Integer orderNum) {
        this.orderNum = orderNum;
    }

    public Integer getApplyNum() {
        return applyNum;
    }

    public void setApplyNum(Integer applyNum) {
        this.applyNum = applyNum;
    }

    public Integer getAverageOrderNum() {
        return averageOrderNum;
    }

    public void setAverageOrderNum(Integer averageOrderNum) {
        this.averageOrderNum = averageOrderNum;
    }

    public Double getAverageMoney() {
        return averageMoney;
    }

    public void setAverageMoney(Double averageMoney) {
        this.averageMoney = averageMoney;
    }

    @Override
    public String toString() {
        return "ProjectDetailCountOutput{" +
                "eventId='" + eventId + '\'' +
                ", eventName='" + eventName + '\'' +
                ", money=" + money +
                ", orderNum=" + orderNum +
                ", applyNum=" + applyNum +
                ", averageOrderNum=" + averageOrderNum +
                ", averageMoney=" + averageMoney +
                ", successNum=" + successNum +
                ", successNumRate='" + successNumRate + '\'' +
                ", successMoney=" + successMoney +
                ", successMoneyRate='" + successMoneyRate + '\'' +
                ", periodDate='" + periodDate + '\'' +
                '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof ProjectDetailCountOutput)) return false;

        ProjectDetailCountOutput output = (ProjectDetailCountOutput) o;

        if (eventId != null ? !eventId.equals(output.eventId) : output.eventId != null) return false;
        if (eventName != null ? !eventName.equals(output.eventName) : output.eventName != null) return false;
        if (money != null ? !money.equals(output.money) : output.money != null) return false;
        if (orderNum != null ? !orderNum.equals(output.orderNum) : output.orderNum != null) return false;
        if (applyNum != null ? !applyNum.equals(output.applyNum) : output.applyNum != null) return false;
        if (averageOrderNum != null ? !averageOrderNum.equals(output.averageOrderNum) : output.averageOrderNum != null)
            return false;
        if (averageMoney != null ? !averageMoney.equals(output.averageMoney) : output.averageMoney != null)
            return false;
        if (successNum != null ? !successNum.equals(output.successNum) : output.successNum != null) return false;
        if (successNumRate != null ? !successNumRate.equals(output.successNumRate) : output.successNumRate != null)
            return false;
        if (successMoney != null ? !successMoney.equals(output.successMoney) : output.successMoney != null)
            return false;
        if (successMoneyRate != null ? !successMoneyRate.equals(output.successMoneyRate) : output.successMoneyRate != null)
            return false;
        return periodDate != null ? periodDate.equals(output.periodDate) : output.periodDate == null;
    }

    @Override
    public int hashCode() {
        int result = eventId != null ? eventId.hashCode() : 0;
        result = 31 * result + (eventName != null ? eventName.hashCode() : 0);
        result = 31 * result + (money != null ? money.hashCode() : 0);
        result = 31 * result + (orderNum != null ? orderNum.hashCode() : 0);
        result = 31 * result + (applyNum != null ? applyNum.hashCode() : 0);
        result = 31 * result + (averageOrderNum != null ? averageOrderNum.hashCode() : 0);
        result = 31 * result + (averageMoney != null ? averageMoney.hashCode() : 0);
        result = 31 * result + (successNum != null ? successNum.hashCode() : 0);
        result = 31 * result + (successNumRate != null ? successNumRate.hashCode() : 0);
        result = 31 * result + (successMoney != null ? successMoney.hashCode() : 0);
        result = 31 * result + (successMoneyRate != null ? successMoneyRate.hashCode() : 0);
        result = 31 * result + (periodDate != null ? periodDate.hashCode() : 0);
        return result;
    }

}
